Method and Apparatus for Context-Aware Delivery of Informational Content on Ambient Displays

ABSTRACT

A method and apparatus is disclosed whereby the context of user activity can be used to tailor the ambient information system. The method and apparatus use both short-term context such as recent activity and long-term context such as historical patterns to highlight specific content on channels or widgets that are likely to be of most immediate interest to the user. This contextual information provided by the framework can also be used to make intelligent decisions about how to tailor the user experience after a user has interacted with the item in question. Additionally, context information accumulated on one device such as a mobile phone can be broadcasted to other devices to influence the ambient information display application on a second device such as a desktop based on enabling remote access to the local context repository.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of and claims priority to U.S. patent application Ser. No. 14/606,904 filed on Jan. 27, 2015, entitled “METHOD AND APPARATUS FOR CONTEXT-AWARE DELIVERY OF INFORMATIONAL CONTENT ON AMBIENT DISPLAYS,” which is a continuation of and claims priority to U.S. patent application Ser. No. 11/928,551, filed on Oct. 30, 2007, entitled “METHOD AND APPARATUS FOR CONTEXT-AWARE DELIVERY OF INFORMATIONAL CONTENT ON AMBIENT DISPLAYS,” the entire disclosures of which are hereby expressly incorporated by reference herein.

BACKGROUND OF THE INVENTION 1. Field of the Invention

The invention relates to a mechanism whereby the context of user activity can be used to tailor the ambient information system.

2. Introduction

Mobile information delivery applications such as SCREEN3 and widgets are gaining popularity for their ability to display ambient information to a user at times when his device is idle, that is when no user-interactive application is running. These applications are useful not only for delivering informational content to the user, example news-feeds, but also for providing regular information updates about the user's community, example music and discussion groups, or for delivering advertisements based on the user's defined interests. In all cases, the real value to the content provider occurs only when the user views a particular item and clicks through to receive more information and download richer content.

Unfortunately, mobile devices have limited display real estate for showing informational content to the user. As a result, applications resort to one of two approaches—a serial consumption experience where information items are displayed and consumed in sequence, and a parallel consumption model where information items are displayed concurrently and consumed simultaneously. Serial consumption usually involves scrolling models—all items are displayed in a carousel format looping sequentially through all available items with only a few items visible to the user at any given point in time. On the other hand, parallel consumption models handle the scarcity of display real estate by placing the decision-making burden on the user. Users must decide which widgets to display in order to make best use of their limited display.

In either case, items must now compete for face-time with the user, given only limited opportunities to grab the user's attention. This leads to interesting situations where item of no interest are shown at an opportune time and items of interest may be shown at un-opportune time. Further, items may be displayed at the wrong time and in the wrong context for the user to properly interact with the item. For example, the user may be interested in knowing if any of his friends have beaten his high score in Tetris (ambient information on a gaming community channel or a gaming presence widget). However, this information is of no use to a user if it is displayed at a time when the user is in a meeting. Instead, if the information was shown to the user in his free time (on his rail commute home), this provides an opportunity for him to respond by launching Tetris to try and reclaim his high score ranking.

Thus, the basic problem is that of information overload with limited opportunities for information display to the user. Note that while we have defined the problem with focus on mobile devices, a similar issue also applies to ambient information systems for desktops such as Apple Dashboard and Yahoo Konfabulator. Users often install more widgets than are “active” on the display at any given time—furthermore, they can also elect to “hide” some subset of active displays in order to reduce information overload and desktop clutter. The key difference is that desktop displays are passive awareness interfaces always visible in the user's periphery while mobile displays are interstitial awareness interfaces only viewed in between user activities—hence desktop systems provide more opportunities to attract the user's attention.

For the reasons stated above, and for other reasons stated below which will become apparent to those skilled in the art upon reading and understanding the present specification, there is a need in the art for mechanism that can display the right information to the user at the right time to achieve impact.

SUMMARY OF THE INVENTION

A method and apparatus is disclosed whereby the context of user activity can be used to tailor the ambient information system. The method and apparatus use both short-term context such as recent activity and long-term context such as historical patterns to highlight specific content on channels or widgets that are likely to be of most immediate interest to the user. This contextual information provided by the framework can also be used to make intelligent decisions about how to tailor the user experience after a user has interacted with the item in question. Additionally, context information accumulated on one device such as a mobile phone can be broadcasted to other devices to influence the ambient information display application on a second device such as a desktop based on enabling remote access to the local context repository.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to describe the manner in which the above-recited and other advantages and features of the invention can be obtained, a more particular description of the invention briefly described above will be rendered by reference to specific embodiments thereof which are illustrated in the appended drawings. Understanding that these drawings depict only typical embodiments of the invention and are not therefore to be considered to be limiting of its scope, the invention will be described and explained with additional specificity and detail through the use of the accompanying drawings in which:

FIG. 1 illustrates an exemplary diagram of communications network environment in accordance with a possible embodiment of the invention;

FIG. 2 illustrates broadcasting context information from one-to-many devices in accordance with a possible embodiment of the invention;

FIG. 3 illustrates a block diagram of an exemplary mobile communication device in accordance with a possible embodiment of the invention;

FIG. 4 illustrates mobile devices implementing serial consumption model and parallel consumption model in accordance with a possible embodiment of the invention;

FIG. 5 illustrates a block diagram for implementing a serial or parallel consumption model in a mobile device in accordance with a possible embodiment of the invention;

FIG. 6 illustrates a block diagram for implementing a serial or parallel consumption model in other devices in accordance with a possible embodiment of the invention;

FIG. 7 illustrates a serial consumption model launching an application in accordance with a possible embodiment of the invention;

FIG. 8 is an exemplary flowchart illustrating one possible process for creating context-aware ambient display systems in accordance with one possible embodiment of the invention; and

FIG. 9 illustrates a framework for content gathering and content action in accordance with a possible embodiment of the invention.

DETAILED DESCRIPTION OF THE INVENTION

Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The features and advantages of the invention may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. These and other features of the present invention will become more fully apparent from the following description and appended claims, or may be learned by the practice of the invention as set forth herein.

Various embodiments of the invention are discussed in detail below. While specific implementations are discussed, it should be understood that this is done for illustration purposes only. A person skilled in the relevant art will recognize that other components and configurations may be used without parting from the spirit and scope of the invention.

The invention comprises a variety of embodiments, such as a method and apparatus and other embodiments that relate to the basic concepts of the invention.

Below are definitions which will be used throughout in the discussion:

An “ambient display system”, “ambient information display” (AID), “SCREEN3”, “widget”, “ambient information system”, or “dashboard” deliver noncritical in-formation to a user in a passive manner. Users perceive this information in their periphery, gaining an overview of the information without requiring the shifting of focus from their other activity. They may gain additional insight by explicitly focusing on the display and possibly interacting with it.

An “interest” may be something that concerns, involves, draws the attention of, or arouses the curiosity of a person.

A “user interest” may be something that concerns, involves, draws the attention of, or arouses the curiosity of a particular user associated with a mobile communications device.

An “interest metric” may be a set of one or more pieces of data, including at least one quantitative element, representative of a level of importance attached to a user interest.

A “user interest metric” may be an interest metric associated with a particular user.

A “user interest profile” may be a collection of data which includes the user interest metrics associated with a particular user.

“Interests” and “user interests” may be found in the real world. “Interest metrics,” “user interest metrics,” and “user interest profiles” are found within our system and form a part of the model of the real-world concepts.

A “geographical area” may be a bounded region of the planet. It may be bounded by a variety of means known in the art. For example: a range of coordinates, such as latitude, longitude, and altitude. Another example is known as metes and bounds whereby a starting point is identified and a path enclosing the geographical area is described. Another example is defining an area by proximity: The area within 10 miles of a user, or the area within 500 meters of Buckingham Fountain in Chicago. Another example is by reference: The 15th floor of the Sears Tower, the Atrium of the Motorola Innovation Center. All of these and more are ways of specifying a geographical area.

The term “area” may be used interchangeably with “geographical area.”

A “zone” may be a data construct within the system associated with one interest metric and one geographical area pertinent to that interest metric.

“Geographical areas” may exist in the real world and as such a user may visit them from time to time. Zones may exist within the system and the user can not visit a zone. There may be many interests associated with an area, but there is preferably one and only one interest metric associated with a zone. Many zones may exist corresponding to the exact same geographical area. Many zones may exist corresponding to approximately the same geographical area, having some of these zones defining the area slightly differently than others, as is best suited to the purposes of their associated interest metrics.

The term “context” as used herein, means any data than can be used to derive information about the situation of an entity. An entity is a person, place, or object that is considered relevant to the interaction between a user and an application or device, including the user and applications within the device themselves.

The embodiments described herein overcome the limitations of the prior art by developing content-aware ambient display systems for each device user without need for an actual user response to a presented content or other item. A context aware framework will help target content so that users are more likely to be presented with content that relate to their interests and activities. This method will increase the probability that the user will interact with the ambient display systems, respond to them, visit the advertised business locations, and purchase the advertised products or services. Thus, the method will increase the impact of mobile advertising and reduce negative user response to irrelevant or intrusive content.

FIG. 1 illustrates an exemplary diagram of a mobile communications network environment 100 in accordance with a possible embodiment of the invention. In particular, the mobile communication network environment 100 may include a plurality of mobile communication devices 120, awareness systems 130, remote computer 150, and a location determination unit 140 connected via network 110.

This invention concerns creating context-aware ambient display systems based on user context.

The mobile communication device 120 may be a portable MP3 player, satellite radio receiver, AM/FM radio receiver, satellite television, portable music player, portable computer, wireless radio, wireless telephone, portable digital video recorder, cellular telephone, mobile telephone, personal digital assistant (PDA), or combinations of the above, for example. Remote computer 150 includes an operating system (not shown) that is stored in a computer-accessible media RAM, ROM, and mass storage device, and is executed by the processor. Examples of operating systems include Microsoft Windows®, Apple MacOS®, Linux®, UNIX®. Examples are not limited to any particular operating system, however, and the construction and use of such operating systems are well known within the art. Embodiments of remote computer 150 are not limited to any type of computer. In varying embodiments, remote computer 150 comprises a PC-compatible computer, a MacOS®-compatible computer, a Linux®-compatible computer, or a UNIX®-compatible computer. The construction and operation of such computers are well known within the art.

The location determination unit 140 is a device external to the mobile communication devices 120 that may record itself or assist the mobile communication device 120 in determining its location. For example, the location determination unit 140 may operate in conjunction with a camera, sensor or other remote device that may recognize the user and records (or assist in recording) the user's location. The information collected by the location determination unit 140 may be transmitted directly or through the communications network 110 to awareness system 130.

The mobile communications network environment 100 illustrated in FIG. 1 and the related discussion are intended to provide a brief, general description of a suitable computing environment in which the invention may be implemented. Although not required, the invention will be described, at least in part, in the general context of computer-executable instructions, such as program modules, being executed by the awareness system 130. Generally, program modules include routine programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that other embodiments of the invention may be practiced in communication network environments with many types of communication equipment and computer system configurations which operate from batteries, including cellular network devices, mobile communication devices, portable computers, hand-held devices, portable multi-processor systems, microprocessor-based or programmable consumer electronics, and the like. The mobile communications device 120 is described further below in relation to FIG. 3.

FIG. 2 illustrates the sharing of context information 200 between devices in accordance with a possible embodiment of the invention. A user 210 while interacting with at least one or more mobile device 120 encounters other devices that are within the control of user 210 or at least open to receiving the broadcasted signal 230 from user 210. The other devices can include personal assistance device or mobile device 240, desktop computer or desktop pc 250, digital picture frame, electronic device such as communication device 120, and entertainment device 260. Entertainment device 260 can be a set top box for receiving television signals, a television set without a set top box, a musical reproduction device, or a gaming system for playing video games

FIG. 3 illustrates a block diagram of an exemplary mobile communications device 120 in accordance with a possible embodiment of the invention. The mobile communications device 120 may include a bus 310, a processor 330, a memory 320 or computer-accessible medium, an antenna 340, a transceiver 350, a communication interface 360, a user location register 370, a mobile device location determination unit 380, and a user interface 390. The mobile communication device 120 has software means (not shown) or instructions operative on the processor 330 for facilitating the interaction of the various hardware components so as to perform one or more process such as telephony communication, creation of custom menus, creation of context-aware ambient display systems, processing of context information, and other steps or functions described herein. Bus 310 may permit communication among the components of the mobile communication device 110.

Processor 330 may include at least one conventional processor or microprocessor that interprets and executes instructions. Memory 320 may be a random access memory (RAM) or another type of dynamic storage device that stores information and instructions for execution by processor 330. In varying embodiments, memory 320 is a magnetic medium, an electronic medium, or an optical medium. Memory 320 may also include a read-only memory (ROM) which may include a conventional ROM device or another type of static storage device that stores static information and instructions for processor 330. Memory 320 has executable instructions to create context-aware ambient display systems. The executable instructions is capable of directing processor 330 to perform selecting at least one of a multiplicity of ambient display systems given a current user context, and highlighting at least one of a multiplicity of content items for display on the selected ambient display systems given the current user context and device capability.

Transceiver 350 may include one or more transmitters and receivers. The transceiver 350 may include sufficient functionality to interface with any network or communications station and may be defined by hardware or software in any manner known to one of skill in the art. The processor 330 is cooperatively operable with the transceiver 350 to support operations within the communications network 110. The transceiver 350 transmits and receives transmissions via one or more of the antennae 340 in a manner known to those of skill in the art.

Communication interface 360 may include any mechanism that facilitates communication via the network 110. For example, communication interface 360 may include a modem. Alternatively, communication interface 360 may include other mechanisms for assisting the transceiver 350 in communicating with other devices and/or systems via wireless connections.

User interface 390 may include one or more conventional input mechanisms that permit a user to input information, communicate with the mobile communication device 110, and/or present information to the user, such as a an electronic display, ambient display, microphone, touchpad, keypad, keyboard, mouse, pen, stylus, voice recognition device, buttons, one or more speakers, etc. As shown the ambient display or display 390 is coupled to processor 330 through Bus 310.

Context dimensions 295 ascertains data about the current state of the system, its users, and their surrounding environment such as location and time of day. Examples of such data are environmental conditions such as weather and temperature, user location, currents tasks being performed by the user through the device 120, goals that may be ascertain from a calendar unit or schedule for the user, and recent context history.

While the mobile communication device 120 is shown as an example, one of skill in the art may appreciate that any known or future-developed combination of location determination systems may be used to track the location of the user. The user location register 370 is used to store the locations of the user as determined by the mobile device location determination unit 380 via a global positioning system (GPS) device, for example.

For instance, in one possible manner to perform the user location tracking process, the mobile device location determination unit 380 may periodically record the location of the mobile communication device 120 and its user in the user location register 370, at various times. At predetermined times or when requested by the personalized advertising selection unit 120, a file containing the user's location/time information may be compressed and periodically uploaded to the personalized advertising selection unit 120. The file may then be deleted from the user's mobile communication device 120. To minimize network load, the user's location/time file and identity information may be uploaded during periods of reduced or idle network traffic, such as the middle of the night, for example.

The mobile communication device 120 may perform such functions in response to processor 330 and/or mobile device location determination unit 380 by executing sequences of instructions contained in a computer-readable medium, such as, for example, memory 320. Such instructions may be read into Memory 320 from another computer-readable medium, such as a storage device or from a separate device via communication interface 360.

FIG. 4 is representation of mobile devices 400 showing serial consumption model 420 and parallel consumption model 460.

The mobile devices 400 include a first mobile device 410, a serial consumption model 420 ambient display system with multiple channels, one canvas, and carousel, and broadcasting device 470 for sharing context information with other devices such as second mobile device 430. The second mobile device includes a parallel consumption model channel1 widget 440, a parallel consumption model channel2 widget 450, and parallel consumption model channel3 widget 460.

FIG. 5 is a representation of the context framework 500 for context-aware ambient display systems in a mobile device 510. Mobile device 510 has the hardware components and software components of communication device 120 as described above in FIG. 3. The context framework 500 includes a mobile device 510, a context framework bus 520, a serial consumption model 530, a parallel consumption model 540, context sources 550, a context broadcasting vehicle 560, content selection select/highlight) 570 for a serial consumption model, and content selection (hide/reveal) 580 for a parallel consumption model. As shown in content selection 570, highlighting for the serial consumption model is to position the current carousel pointer to a content channel or an item that is most relevant to the user context.

The context framework bus 520 on mobile phone 410 uses the gathered user context information 550 from sources A-D so as to select a multiplicity of ambient display systems such as serial consumption model 530 and parallel consumption model 540. The selected ambient display systems will display the highlighted specific content for the user to select for further interaction. The user context information 550 can be based on current user context or historical user context. User context information 550 is any data through which contextual information may be derived (e.g., user name and password, preferences, user's proximity to a context gathering device, documents, software version/status information, authorizations, keys, or any other information that may indicate a preference or authorization for access to data). Various models and algorithms can assist the context framework bus 520 to determine relevant or related information. Also, context information 550 can be obtained from a plurality of sources such as a calendar, detected application activities, detected application content, a log of previous activities, an explicit profile, a microphone and/or camera, face recognition technology, telephone or cell phone activity, and so forth. Such context can be employed to determine a user's current focus of attention or determine what types of information may be most likely to impact the user based upon the user's current task at hand. In operation, the context framework bus 520 dynamically generates or fetches the highlighted specific content according to a required further user input and contextual information. The context framework bus 520 basic principles of operation comprise inserted data in the form of data objects having base data and unlimited number of attributes. Any application can update the information in any data object regardless of ownership or initiating of the data object. The Context framework bus 520 may retrieve data objects on the basis of specific attributes. The retrieval and updating creates a share data container to enable applications to share relevant data with others without necessarily being aware of the identities, interfaces, or count of the interested recipient. The context framework bus 520 allows applications to received information about updated data objects or to limit information about only specific updated data objects. The context framework bus 520 organizes the data object based on relationships. Further, the context framework bus 520 maintains an index of data objects and when they were created and how often they are used by the application community. Those data objects that are beyond a certain period are purged from the index and can only be used by those applications that retain the data object. Data objects representing context sources 550 such as media player telephony, web browser, and gaming applications are processed by the context framework bus 520.

The context framework bus 520 facilitates an agreement between data producers (applications) and the data consumer (SCREEN3 or widget engine) on the attributes to be associated with shared information. Thus, a gaming application simply drops data on the context framework bus 520 with game-related information (type=game, status=start, title=chess, genre=strategy). The ambient display application (SCREEN3 or widget engine) can register to be notified of all data with a “type” attribute, and look at the value of this attribute to find relevant channels (or widgets) that correspond to it. The serial consumption model 530 (SCREEN3) or the parallel consumption model 540 (widget engine) application can register to be notified of specific context. The parallel consumption model 540 shows a concurrent display while the serial consumption model 530 has multiple channels. In the serial consumption model 530 the multiple channels or a subset of channels are carousel to the user for consumption. The current carousel for serial consumption model 530 is current carousel 570. It should be understood that the ambient display system can support at least one of serial consumption model, parallel consumption model, or serial consumption model and parallel consumption model. How the highlighted content items are shown to the user depends on whether a serial consumption model 530 or a parallel consumption model 540 is used at the ambient display system. For example, highlighted content items are setting the current carousel pointer to a particular item (more specifically a channel, item tuple) 570 for a serial consumption model, or revealing the right widget (transition from hidden state) 580 for the parallel consumption model. This context is also persisted such that if the current focus is on a different application, the state can be en-forced later when the idle or widget screen regains focus. Thus, when the user quits the current application, the user will find the idle/widget screen automatically displaying contextually relevant content (570, 580).

Furthermore, not only is the last-known contextual state persisted but also one can maintain some level of at least one of recent activity, recent context history, or historical patterns for at least one device. The context history is tunable because it could set to a desired duration. The contextual history allows the use of history information to prioritize content retrieval for channels that are likely to be of more interest to the user in the short term like for example brings up the events channel if the user just finished playing a Jazz song, if it is aware of a Jazz event item in that channel. As a result, the user continues to be engaged with the ambient information display increasing the opportunities for other information to be viewed serendipitously.

The context framework 500 employs a broadcast mechanism 560 for sharing the context information with other devices.

FIG. 6 is a representation of the context framework 600 in other devices such as set-top box, personal computer, or television set. The context framework 600 comprises a device 610 such as a set-top box, personal computer, television, or gaming console. These devices are expected to be within the user's proximity and it is expected that, at minimum, the user is capable of interacting with the device. Further, the context framework 600 comprises a context source 620 such as from program guide and recorded content, a context framework bus 630 operating under the same principle as bus 520, serial consumption model 640, parallel consumption model 650, content selection 570 under serial consumption model such as hide and reveal, and content selection under the parallel consumption model such as select and highlight.

FIG. 7 is a representation 700 of the serial consumption model illustrating the bites, meals, and further action. The representation 700 shows the serial consumption model (SCREEN 3) from headline 710 or bite to meal 740. Headline 710 is the given content or the highlighted specific content for a selected channel of the serial consumption model. The process begins with the selected headline 710 about a musical group rescheduling a musical tour. The headline 710 is the bite. If the user selects the headline 710, the headline is expanded with additional information such as an excerpt summarizing the headline 710. This excerpt is known as a snack. The user can select to have the meal by interacting with the snack. The meal as shown in 730 is simply to launch the browser and go to the source article. While at the source article, the user can request the complete article. This is called a feast since the user is allowed to consume the complete article. The meal can be augmented with context information. Instead of only requesting the source article context information could be used to engage an action launch by creating custom menus, dynamically generated menu of user actionable tasks, sorted by priority and relevant context. Custom menu 750 shows action launch like calling ticket provider, adding an event to a calendar, and selecting an URL for additional information. The custom menu 750 is tailored to the device's capability or to functions that are supported by the device. The capability of the device to connect to the internet, to cause telephone call, broadcast or a fetch an application such as a calendar application whether in the electronic device or a desktop pc. The context framework bus (520, 630) can enable a multiplicity of user actionable tasks such forms, broadcasting context information, making reservations, updating a calendar, making a telecommunication call, initiating a connection with a wireless network, and any other application that can be programmed or added to a programmed processing device. For example, in the case where the user chooses to interact with a headline about a musical group the user may be given the choice of calling Ticketmaster or other retailers to purchase a ticket for the concert, add an entry for the concert in their calendar, launch the browser and go to the source article. In gaming, context-aware ambient display can help alleviate the awareness problem by using a gameplay context to drive user awareness of other related games (e.g., in the same genre) or can actually recommend games that the user owns but has not played in a while. In Mobile Advertising, SCREEN3 has often been cited as a delivery channel for advertisements. The context-aware ambient display would enable the selection of the right advertisement for display to the user at a given time thus increasing the chances of a click-through. In Mobile Music SCREEN3 has also been cited as a delivery channel for community-based ambient information such as music presence. It is also being used in the Liquid Music context to display related event information (e.g., concerts in your area) via SCREEN3. This context-aware ambient display will ensure that the related channels are displayed to the user at relevant times e.g., brings up the events channel if the user just finished playing a Jazz song, if it is aware of a Jazz event item in that channel.

FIG. 8 is a flowchart of process 800, a method of creating context-aware ambient display systems in accordance to a possible embodiment. Method 800 begins with action 820 which perform the selection of ambient display systems whereby the context of user activity 810 is used to tailor the ambient information system. User context 620 comprises short-term context or recent activity and long-term context or historical patterns to highlight specific content 830 (channels, widgets) that are likely to be of most immediate interest to the user. This highlighting of relevant content 830 can be done in a manner that maintains the user experience. For instance, context is used to reposition the current carousel pointer in a serial consumption interface such that the user immediately sees the item that was most relevant to his most recent activity. Alternatively, context is used to automate the hide and reveal transition for specific widgets that are most relevant to user activity and potentially automate the reveal and hide transition of irrelevant or stale information widgets. As a result, the user may install and activate many widgets but have only a subset are revealed at any time thus reducing desktop clutter. After the content has been highlighted 830, the method enables actionable tasks 840 such as launching a browser with expanded content, dynamically generated menu 850 of user actionable tasks sorted by priority and relevant context. method 800 operates in the background to display the right information to the user at the right time to achieve impact, where “time” can be an absolute time (based on user history of information access—e.g., user always reads the news on his commute to work) or time can refer to contextually-relevant time (based on recent user activity e.g., when user quits a game, show him items corresponding to other games available at the carrier). In other embodiments, method 800 is implemented as a computer-accessible medium having executable instructions capable of directing a processor, such as processor 330 in FIG. 3, to perform the respective method. In varying embodiments, the medium is a magnetic medium, an electronic medium, or an optical medium.

FIG. 9 is a representation of the layers of a context-aware ambient display system 900 in accordance to a possible embodiment. The layers comprise the inputs, context gathering 920, content abstraction 930, content action, and actions 950, 960, 970 for creating context-aware ambient display systems. The first layer consist of contextual inputs 910 such as from media player, telephony, web browser, set top box, personal computer, television set, entertainment center, gaming system, location, identity, and time and activity. In the context gathering 920 layer, the contextual inputs are transformed, aggregated, and interpreted. In layer 930, the gathered context information is then abstracted to produce a context representation. In layer 940, the context representation is employed to trigger the context-aware ambient display systems. The first trigger 950, second trigger 960, third trigger 970 can be one or more of the following: selected and highlight, select and highlight, generate menu of user-actionable tasks, launch an application such as a calendar or browser, and broadcast context information to other devices.

The context-aware ambient display systems can in the mobile gaming community provide awareness and channel enhancements. Awareness is the long tail of content in that the users often do not play games either because they are not aware that the games exist or are not able to find the right games for their taste. The channel problem exacerbates the awareness problem by limiting the number of conduits through which users can discover and purchase game content—for instance, most carriers allow for purchases from an operator-controlled game deck that lists available games. However, because users typically don't scroll through more than a couple of screens, and because carriers tend to populate the top of the deck with choices that reflect aggregate tastes—this often results in users walking away without discovering and buying a game of interest. The context-aware ambient display as described can help alleviate the awareness problem by using a game-play context to drive user awareness of other related games (e.g., in the same genre) or can actually recommend games that the user owns but has not played in a while (e.g., remind the user of games in that genre that the user owns but hasn't played). In mobile advertising, the context-aware ambient display system would enable the selection of the right advertisement for display to the user at a given time; thus, increasing the chances of a click-through. In mobile music, SCREEN3 is used as a delivery channel for community-based ambient information such as music presence. In the Liquid Music con text to display related event information (e.g., concerts in your area) via SCREEN3. This The context-aware ambient display will ensure that the related channels are displayed to the user at relevant times—e.g., brings up the events channel if the user just finished playing a Jazz song, if it is aware of a Jazz event item in that channel.

Embodiments may also be practiced in distributed computing environments where tasks are performed by local and remote processing devices that are linked (either by hardwired links, wireless links, or by a combination thereof) through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.

Embodiments within the scope of the present invention may also include computer-readable media for carrying or having computer-executable instructions or data structures stored thereon. Such computer-readable media can be any available media that can be accessed by a general purpose or special purpose computer. By way of example, and not limitation, such computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to carry or store desired program code means in the form of computer-executable instructions or data structures. When information is transferred or provided over a network or another communications connection (either hardwired, wireless, or combination thereof) to a computer, the computer properly views the connection as a computer-readable medium. Thus, any such connection is properly termed a computer-readable medium. Combinations of the above should also be included within the scope of the computer-readable media.

Computer-executable instructions include, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing device to perform a certain function or group of functions. Computer-executable instructions also include program modules that are executed by computers in stand-alone or network environments. Generally, program modules include routines, programs, objects, components, and data structures, etc. that perform particular tasks or implement particular abstract data types. Computer-executable instructions, associated data structures, and program modules represent examples of the program code means for executing steps of the methods disclosed herein. The particular sequence of such executable instructions or associated data structures represents examples of corresponding acts for implementing the functions described in such steps.

Although the above description may contain specific details, they should not be construed as limiting the claims in any way. Other configurations of the described embodiments of the invention are part of the scope of this invention. For example, the principles of the invention may be applied to each individual user where each user may individually deploy such a system. This enables each user to utilize the benefits of the invention even if any one of the large number of possible applications do not need the functionality described herein. In other words, there may be multiple instances of the context-aware ambient display systems each processing the content in various possible ways. It does not necessarily need to be one system used by all end users. Accordingly, the appended claims and their legal equivalents should only define the invention, rather than any specific examples given. 

We claim:
 1. A method of creating context-aware display systems comprising: determining a current user context including an identity of a user via facial recognition and preferences of the user for particular widgets; and concurrently displaying multiple widgets on the device to highlight the multiple widgets that are most relevant to the current user context.
 2. The method of claim 1, further comprising: authorizing a device to access application data stored on the device in response to the facial recognition; and in response to authorizing the device, presenting an ambient display based on the current user context including concurrently displaying the multiple widgets on the device.
 3. The method of claim 1, wherein the multiple widgets are a subset of a plurality of widgets displayed in a serial consumption model, wherein the serial consumption model involves a carousel display of the plurality of widgets, with only a subset of the plurality of widgets visible at a given time.
 4. The method of claim 3, wherein the carousel display loops sequentially from a first subset of the plurality of widgets to a second subset of the plurality of widgets.
 5. The method of claim 1, further comprising: enabling a user actionable task that can be supported on each of the highlighted widgets given the current user context and a device capability.
 6. The method of claim 5, wherein the user actionable task includes launching an application.
 7. The method of claim 1, wherein the device is a mobile device, a set top box, or a desktop PC.
 8. An electronic device comprising: a display; a processor coupled to the display; a storage device coupled to the processor; software means operative on the processor for: determining a current user context including an identity of a user via facial recognition and preferences of the user for particular widgets; and concurrently displaying multiple widgets on the device to highlight the multiple widgets that are most relevant to the current user context.
 9. The electronic device of claim 8, further comprising software means operative on the processor for: authorizing a device to access application data stored on the device in response to the facial recognition; and in response to authorizing the device, presenting an ambient display based on the current user context including concurrently displaying the multiple widgets on the device.
 10. The electronic device of claim 8, wherein the multiple widgets are a subset of a plurality of widgets displayed in a serial consumption model, wherein the serial consumption model involves a carousel display of the plurality of widgets, with only a subset of the plurality of widgets visible at a given time.
 11. The electronic device of claim 10, wherein the carousel display loops sequentially from a first subset of the plurality of widgets to a second subset of the plurality of widgets.
 12. The electronic device of claim 8, further comprising software means operative on the processor for: enabling a user actionable task that can be supported on each of the highlighted widgets given the current user context and a device capability.
 13. The electronic device of claim 12, wherein the user actionable task includes launching an application.
 14. The electronic device of claim 8, wherein the device is a mobile device, a set top box, or a desktop PC.
 15. A non-transitory computer-accessible medium having executable instructions to create context-aware display systems, the executable instructions capable of directing a processor to perform: determining a current user context including an identity of a user via facial recognition and preferences of the user for particular widgets; and concurrently displaying multiple widgets on the device to highlight the multiple widgets that are most relevant to the current user context.
 16. The computer-accessible medium of claim 15, wherein the executable instructions capable of directing the processor to create context-aware display systems further comprise executable instructions capable of directing the processor to perform: authorizing a device to access application data stored on the device in response to the facial recognition; and in response to authorizing the device, presenting an ambient display based on the current user context including concurrently displaying the multiple widgets on the device.
 17. The computer-accessible medium of claim 15, wherein the multiple widgets are a subset of a plurality of widgets displayed in a serial consumption model, wherein the serial consumption model involves a carousel display of the plurality of widgets, with only a subset of the plurality of widgets visible at a given time.
 18. The computer-accessible medium of claim 17, wherein the carousel display loops sequentially from a first subset of the plurality of widgets to a second subset of the plurality of widgets.
 19. The computer-accessible medium of claim 15, wherein the executable instructions capable of directing the processor to create context-aware display systems further comprise executable instructions capable of directing the processor to perform: enabling a user actionable task that can be supported on each of the highlighted widgets given the current user context and a device capability.
 20. The computer-accessible medium of claim 19, wherein the user actionable task includes launching an application. 